home *** CD-ROM | disk | FTP | other *** search
- package com.extensibility.xml;
-
- import com.extensibility.xml.dt.DataTypeFactory;
- import com.extensibility.xml.dt.Facet;
-
- public class SOX2Writer$AttrProxy extends SOX2Writer.DeclProxy {
- // $FF: synthetic field
- final SOX2Writer this$0;
- AttributeDeclaration decl;
-
- SOX2Writer$AttrProxy(SOX2Writer var1) {
- super(var1);
- this.this$0 = var1;
- }
-
- SOX2Writer$AttrProxy(SOX2Writer var1, AttributeDeclaration var2) {
- super(var1);
- this.this$0 = var1;
- this.setDecl(var2);
- }
-
- void setDecl(AttributeDeclaration var1) {
- this.decl = var1;
- super.setDecl(var1);
- }
-
- public void write(SXE var1, boolean var2) {
- if (!this.decl.isOwnerDeclared() || this.this$0.isPreviewing()) {
- this.writeType(var1, var2);
- }
-
- }
-
- void writeDataType(SXE var1, boolean var2) {
- if (!this.decl.getDataType().equals(1)) {
- if ((this.decl.getDataType().hasFacet(Facet.FACET_ENUM_NAME) || this.decl.getDataType().hasFacet(Facet.FACET_MAXLENGTH_NAME) || this.decl.getDataType().hasFacet(Facet.FACET_MINEX_NAME) || this.decl.getDataType().hasFacet(Facet.FACET_MAXEX_NAME) || this.decl.getDataType().hasFacet(Facet.FACET_MIN_NAME) || this.decl.getDataType().hasFacet(Facet.FACET_MAX_NAME) || this.decl.getDataType().hasFacet(Facet.FACET_DECIMALS_NAME) || this.decl.getDataType().hasFacet(Facet.FACET_DIGITS_NAME)) && !DataTypeFactory.isKnown(this.decl.getDataType())) {
- if (var2) {
- ((SOX2Writer.DeclProxy)this).writeComments(var1);
- }
-
- SOX2Writer.access$2000271(this.this$0, var1, this.decl, this.decl.getDataType(), false);
- } else {
- SOX2Writer.access$2000371(this.this$0, var1, this.decl.getDataType(), false);
- if (var2) {
- ((SOX2Writer.DeclProxy)this).writeComments(var1);
- }
- }
- } else if (var2) {
- ((SOX2Writer.DeclProxy)this).writeComments(var1);
- }
-
- }
-
- void writeType(SXE var1, boolean var2) {
- var1.writeElem("attdef", -1);
- String var3 = this.decl.getName();
- if (var3.indexOf(":") > 0) {
- String var4 = var3.substring(0, var3.indexOf(":"));
- String var5 = var3.substring(var3.indexOf(":") + 1);
- var1.writeAttr("name", var5);
- var1.writeAttr("prefix", var4);
- } else {
- var1.writeAttr("name", var3);
- }
-
- ((SOX2Writer.DeclProxy)this).writeMetaProps(var1);
- this.writeDataType(var1, var2);
- if (this.decl.getDefault() != null) {
- if (!this.decl.getRequired()) {
- var1.writeElem("default", -1);
- var1.writeText(this.this$0.schema.expandPERefs(this.decl.getDefault(), this.decl));
- var1.flush("default");
- } else {
- var1.writeElem("fixed", -1);
- var1.writeText(this.this$0.schema.expandPERefs(this.decl.getDefault(), this.decl));
- var1.flush("fixed");
- }
- } else if (this.decl.getRequired()) {
- var1.writeElem("required", true);
- } else if (this.decl.getDefault() == null) {
- var1.writeElem("implied", true);
- }
-
- var1.flush("attdef");
- }
- }
-